package com.feitian.sms;

import com.github.qcloudsms.SmsSenderUtil;
import com.github.qcloudsms.SmsSingleSender;
import com.github.qcloudsms.SmsSingleSenderResult;
import com.github.qcloudsms.httpclient.HTTPException;
import org.testng.annotations.Test;
import sun.nio.cs.ext.MacHebrew;

import java.io.IOException;
import java.util.ArrayList;
import java.util.Random;

/**
 * @author MACHENIKE
 * @date 2018年11月7日14点35分
 * @feature 腾讯云短信发送
 */
public class SmsSend {

    /**
     * 腾讯云短信接口参数
     */
    // 短信应用SDK AppID，腾讯云提供
    private int appid = 1400149901; // 1400开头
    // 短信应用SDK AppKey，腾讯云提供
    private String appkey = "0e3bed431a2a864930546bea732c0af5";
    // 短信模板ID，需要在短信应用中申请，申请后，腾讯云提供
    private int templateId = 206830;
    //国家码
    private String nationCode="86";

    private String extend=null;

    private String ext=null;

    /**
     * 指定模板单发
     *
     * @param nationCode 国家码，如 86 为中国
     * @param phoneNumber 不带国家码的手机号
     * @param templateId 信息内容
     * @param params 模板参数列表，如模板 {1}...{2}...{3}，那么需要带三个参数
     * @param sign 签名，如果填空，系统会使用默认签名
     * @param extend 扩展码，可填空
     * @param ext 服务端原样返回的参数，可填空
     * @return {@link}SmsSingleSenderResult
     * @throws HTTPException  http status exception
     * @throws JSONException  json parse exception
     * @throws IOException    network problem
     */
    @Test
    public void sendInfo() throws HTTPException, IOException {
        SmsSingleSender smsSingleSender = new SmsSingleSender(appid,appkey);
        String str = this.random();
        String [] params={str,"1"};
        String phoneNumber = "18710540640";
        SmsSingleSenderResult result = smsSingleSender.sendWithParam( nationCode,  phoneNumber,  templateId,
         params,  null,  extend,  ext);//指定模板单发
    }
    @Test
    public String random(){
        int intFlag = (int)(Math.random()*1000000);
        String str = intFlag+"";
        return str;
    }
}
